package com.wicket.okrbff.biz.service;

import com.wicket.okrbff.biz.service.dto.req.*;
import com.wicket.okrbff.biz.service.dto.res.*;
import com.wicket.okrframework.integration.FwBaseOrgDictionaryClient;
import com.wicket.okrframework.integration.dto.AddOrgClassRespDto;
import com.wicket.okrframework.integration.dto.AddOrgClassReqDto;
import com.wicket.okrbff.common.exception.Assert;
import com.wicket.okrframework.integration.dto.UpdateOrgClassRespDto;
import com.wicket.okrframework.integration.dto.UpdateOrgClassReqDto;
import com.wicket.okrframework.integration.dto.QueryOrgClassListRespDto;
import com.wicket.okrframework.integration.dto.QueryOrgClassListReqDto;
import cn.hutool.core.bean.BeanUtil;
import java.util.stream.Collectors;
import com.wicket.okrframework.integration.FwBasePositionClient;
import com.wicket.okrframework.integration.dto.QueryPositionListRespDto;
import com.wicket.okrframework.integration.dto.QueryPositionListReqDto;
import com.wicket.okrframework.integration.dto.QueryDeleteDeptClassListRespDto;
import com.wicket.okrframework.integration.dto.QueryDeleteDeptClassListReqDto;
import com.wicket.okrbff.common.util.CommonFunctionHelper;
import com.wicket.okrframework.integration.FwBaseInductionRecordClient;
import com.wicket.okrframework.integration.dto.QueryInductionRecordDetailBorderRespDto;
import com.wicket.okrframework.integration.dto.QueryInductionRecordDetailBorderReqDto;
import com.wicket.okrframework.integration.dto.QueryInductionRecordDetailComBorderRespDto;
import com.wicket.okrframework.integration.dto.QueryInductionRecordDetailComBorderReqDto;
import com.wicket.okrframework.integration.dto.QueryWorkTaskSourceListRespDto;
import com.wicket.okrframework.integration.dto.QueryWorkTaskSourceListReqDto;
import com.wicket.okrbff.biz.service.dto.common.BffWorkTaskSourceDto;
import com.wicket.okrframework.integration.dto.QueryUcdWorkTaskSourceListRespDto;
import com.wicket.okrframework.integration.dto.QueryUcdWorkTaskSourceListReqDto;
import com.wicket.okrframework.integration.dto.QueryWorkTaskSourceMateDeptBusinessIdentityListRespDto;
import com.wicket.okrframework.integration.dto.QueryWorkTaskSourceMateDeptBusinessIdentityListReqDto;
import com.wicket.okrbff.biz.service.dto.common.BffDeptBusinessIdentityDto;
import com.wicket.okrframework.integration.dto.QueryTaskCategoriesListComRespDto;
import com.wicket.okrframework.integration.dto.QueryTaskCategoriesListComReqDto;
import com.wicket.okrapp.integration.FwAppCycleTypeClient;
import com.wicket.okrapp.integration.dto.BatchQueryCycleComRespDto;
import com.wicket.okrapp.integration.dto.BatchQueryCycleComReqDto;
import cn.hutool.core.collection.CollectionUtil;
import com.wicket.okrframework.integration.dto.ArchiveTaskCategoriesBusinessHandleRespDto;
import com.wicket.okrframework.integration.dto.ArchiveTaskCategoriesBusinessHandleReqDto;
import com.wicket.okrframework.integration.dto.DeleteTaskCategoriesBusinessHandleRespDto;
import com.wicket.okrframework.integration.dto.DeleteTaskCategoriesBusinessHandleReqDto;
import com.wicket.okrframework.integration.dto.UpdateTaskCategoriesBusinessHandleRespDto;
import com.wicket.okrframework.integration.dto.UpdateTaskCategoriesBusinessHandleReqDto;
import com.wicket.okrframework.integration.dto.QueryTaskCategoriesThemeListRespDto;
import com.wicket.okrframework.integration.dto.QueryTaskCategoriesThemeListReqDto;
import com.wicket.okrframework.integration.dto.AddTaskCategoriesBusinessHandleRespDto;
import com.wicket.okrframework.integration.dto.AddTaskCategoriesBusinessHandleReqDto;
import com.wicket.okrbff.common.dto.TreeNode;
import java.util.ArrayList;
import java.util.List;

/**
 * @author ：
 * @date ：
 *
 *
 * @version 1.0
 */
public interface OrgDictionaryService {
    /**
   * B1-3查部门类型数据字典列表（边界）
   */
    BffQueryDeptClassListBorderRespDto queryDeptClassListBorder(BffQueryDeptClassListBorderReqDto reqDto);

    /**
   * B1-3查询组织架构类型字典列表（边界）
   */
    BffQueryOrgClassListBorderRespDto queryOrgClassListBorder(BffQueryOrgClassListBorderReqDto reqDto);

    /**
   * B1-3查询可存档部门类型判断条件（管理）
   */
    BffQueryArchiveDeptClassRespDto queryArchiveDeptClass(BffQueryArchiveDeptClassReqDto reqDto);

    /**
   * B1-3查询可存档职务类别条件（管理）
   */
    BffQueryArchivePositionClassRespDto queryArchivePositionClass(BffQueryArchivePositionClassReqDto reqDto);

    /**
   * B1-3查询主岗就职字典列表（边界）
   */
    BffQueryMainInductionOrgClassListRespDto queryMainInductionOrgClassList(BffQueryMainInductionOrgClassListReqDto reqDto);

    /**
   * B1-3查询组织架构类型字典列表（管理）
   */
    BffQueryOrgClassListRespDto queryOrgClassList(BffQueryOrgClassListReqDto reqDto);

    /**
     * B1-3删除部门类型字典(管理)
     */
    BffDeleteDeptClassRespDto deleteDeptClass(BffDeleteDeptClassReqDto reqDto);

    /**
   * B1-3修改组织架构类型字典（管理）
   */
    BffUpdateOrgClassRespDto updateOrgClass(BffUpdateOrgClassReqDto reqDto);

    /**
   * B1-3新增组织架构类型字典（管理）
   */
    BffAddOrgClassRespDto addOrgClass(BffAddOrgClassReqDto reqDto);
/**
   * B1查询工作任务来源列表
   */
    BffQueryWorkTaskSourceListRespDto queryWorkTaskSourceList(BffQueryWorkTaskSourceListReqDto reqDto);
/**
   * B1查询UCD筛选工作任务来源列表
   */
    BffQueryUcdWorkTaskSourceListRespDto queryUcdWorkTaskSourceList(BffQueryUcdWorkTaskSourceListReqDto reqDto);
/**
   * B1查询工作任务来源匹配部门业务身份列表(管理)
   */
    BffQueryWorkTaskSourceMateDeptBusinessIdentityListRespDto queryWorkTaskSourceMateDeptBusinessIdentityList(BffQueryWorkTaskSourceMateDeptBusinessIdentityListReqDto reqDto);
/**
   * B1查询任务分类列表(管理)
   */
    BffQueryTaskCategoriesListRespDto queryTaskCategoriesList(BffQueryTaskCategoriesListReqDto reqDto);
/**
   * B1存档任务分类(管理)
   */
    BffArchiveTaskCategoriesRespDto archiveTaskCategories(BffArchiveTaskCategoriesReqDto reqDto);
/**
   * B1删除任务分类(管理)
   */
    BffDeleteTaskCategoriesRespDto deleteTaskCategories(BffDeleteTaskCategoriesReqDto reqDto);
/**
   * B1修改任务分类(管理)
   */
    BffUpdateTaskCategoriesRespDto updateTaskCategories(BffUpdateTaskCategoriesReqDto reqDto);
/**
   * B1查询任务分类主题列表(边界)
   */
    BffQueryTaskCategoriesThemeListBorderRespDto queryTaskCategoriesThemeListBorder(BffQueryTaskCategoriesThemeListBorderReqDto reqDto);
/**
   * B1新增任务分类(管理)
   */
    BffAddTaskCategoriesRespDto addTaskCategories(BffAddTaskCategoriesReqDto reqDto);
    //
}
